from copy import deepcopy
from framework.report.var_report import PdfContentEN as PcEN


class Report:
    def __init__(self, file_name, test_data):
        self.story = []
        self.file_name = file_name
        self.test_data = deepcopy(test_data)
        self.bm_summary = self.test_data.bm_summary
        self.bm_suite = self.test_data.bm_suite
        self.bm_data = self.test_data.bm_data
        self.bm_sub_item = self.test_data.bm_sub_item
        self.status_num = self.test_data.status_num
        self.blank_line = False

    def get_hardware(self):
        return

    def get_software(self):
        return

    def get_testcase_status(self):
        status_dict = {PcEN.RESULT_STATUS: PcEN.INVALID if self.status_num[-1] else PcEN.SUCCESS,
                       PcEN.TOTAL_CASES: self.status_num[0], PcEN.SUCCESS_CASES: self.status_num[1],
                       PcEN.FAIL_CASES: self.status_num[-1]}
        return status_dict

    def get_suite_summary(self):
        raise NotImplementedError

    def get_suite_detail(self):
        raise NotImplementedError

    def get_sub_items(self):
        raise NotImplementedError

    def get_workloads(self, workload_data, table_title=None):
        raise NotImplementedError

    def get_report_content(self):
        raise NotImplementedError

    def get_compile_option(self):
        return

    def make_report(self):
        raise NotImplementedError
